@font-face {
  font-family: 'Inconsolata';
  font-style: normal;
  font-weight: normal;
  src: local('Inconsolata'), url('Inconsolata.woff') format('woff');
}

/*@-webkit-keyframes pulse {
 0% {
  opacity: 0;
 }
 25% {
  opacity: 0.2;
 }
 50% {
  opacity: 0;
 }
 75% {
  opacity: 0;
 }
 100% {
   opacity: 0.2;
 }
}
*/
/*
@-webkit-keyframes flicker {
  0% { opacity: 0.95; }
  10% { opacity: 0.9; }
  20% { opacity: 0.85; }
  30% { opacity: 0.9; }
  40% { opacity: 0.95; }
  50% { opacity: 0.9; }
  60% { opacity: 0.95; }
  70% { opacity: 0.92; }
  80% { opacity: 0.85; }
  90% { opacity: 0.92; }
  100% { opacity: 0.9; }
}
*/
@-webkit-keyframes flicker {
  0% { opacity: 0.75; }
  10% { opacity: 0.7; }
  20% { opacity: 0.65; }
  30% { opacity: 0.7; }
  40% { opacity: 0.75; }
  50% { opacity: 0.65; }
  60% { opacity: 0.75; }
  70% { opacity: 0.72; }
  80% { opacity: 0.65; }
  90% { opacity: 0.72; }
  100% { opacity: 0.7; }
}

::selection {
  background: #0080FF;
  text-shadow: none !important;
}
html, body {
  margin: 0;
  height: 100%;
}
body {
  font-family: Inconsolata, monospace;
  color: white;
  background: #222;
}
.offscreen {
  background: -webkit-linear-gradient(top, #000, #333);
}
.offscreen #container {
  background: rgba(0,0,0,0.7);
  height: 100%;
  position: fixed;
  text-shadow: none;
  box-shadow: 0 0 15px black;
}
.offscreen #container output {
  overflow-x: hidden;
  display: inline-block;
  height: 100px;
}
.offscreen .interlace {
  display: none;
}
#container {
  -webkit-transition: -webkit-transform 1.5s ease-in-out;
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.dropping {
  /*background: -webkit-linear-gradient(
    bottom,
    rgb(209,144,23) 13%,
    rgb(251,173,51) 57%,
    rgb(255,208,77) 79%
  );*/
  background: #333;
}
/*
.crt {
  z-index: 50;
  width: 100%;
  height: 50px;
  position: fixed;
  /*margin: 15px 31px 0px 32px;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  background: -webkit-gradient(radial, 50% 10057%, 4999, 50% 10055%, 5000, from(transparent), to(black) ) transparent no-repeat 10% 100%;
}
.crt.top {
  top: -20px;
}
.crt.bottom {
  -webkit-transform: rotate(180deg);
  bottom: -20px;
}*/
.crt {
  z-index: 50;
  width: 100%;
  height: 50px;
  position: fixed;
  background: black;
}
.crt.top {
  top: 0;
}
.crt.bottom {
  bottom: 0;
  -webkit-transform: rotate(180deg);
}
.hz {
  -webkit-animation-name: hz;
  -webkit-animation-duration: 30s;
  -webkit-animation-iteration-count: infinite;
}

.flicker {
  -webkit-animation-name: flicker;
  -webkit-animation-duration: 1s;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-timing-function: ease-in-out;
}
.interlace {
  position: absolute;
  left: 0;
  top: 0;
  background: url(interlace.png) top left repeat, rgba(255,255,255,0.5);
  width: 100%;
  height: 100%;
  opacity: 0.2;
  z-index: 10;
  pointer-events: none;
  /*border-top-left-radius: 150px 50px;
  border-top-right-radius: 150px 50px;
  border-bottom-left-radius: 150px 50px;
  border-bottom-right-radius: 150px 50px;*/
}
.hidden {
  display: none !important;
}
.dim > * {
  opacity: 0.4;
}
.dim .help {
  opacity: 1;
}
iframe#fsn {
  position: absolute;
  height: 100%;
  width: 100%;
  border: none;
}
#container {
  padding: 1em 1.5em 1em 1em;
  text-shadow: 0 0 2px #C8C8C8;
  /*overflow: hidden;
  white-space: nowrap;*/

  /*box-shadow: 10px 5px 20px rgba(255,255,255,0.2) inset,
              -10px -5px 20px rgba(255,255,255,0.2) inset;
  border-radius: 50px;
  background: rgba(255, 255, 255, 0.1);*/
}
#container output {
  clear: both;
  width: 100%;
}
#container output h3 {
  margin: 0;
}
#container output pre {
  margin: 0;
}
#container output textarea {
  width: 100%;
  height: 200px;
  background-color: rgba(255,255,255,0.1);
  border: none;
  color: inherit;
  font: inherit;
  outline: 0;
  border-radius: 10px;
  padding: 5px;
}
#container output textarea::selection {
  background: red;
}
#container output textarea::-webkit-scrollbar {
  width: 1ex;
}
#container output textarea::-webkit-scrollbar-thumb {
  border-top: 1px solid #fff;
  background: #ccc -webkit-linear-gradient(rgb(240, 240, 240), rgb(210, 210, 210));
  border-radius: 1ex;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}
.input-line {
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  clear: both;
}
.input-line > div:nth-child(2) {
  -webkit-box-flex: 1;
  box-flex: 1;
}
.prompt {
  white-space: nowrap;
  color: #ffcc00; /*green;*/
  margin-right: 7px;
  display: -webkit-box;
  -webkit-box-pack: center;
  -webkit-box-orient: vertical;
  display: box;
  box-pack: center;
  box-orient: vertical;
  -webkit-user-select: none;
  user-select: none;
}
.cmdline {
  outline: none;
  background-color: transparent;
  margin: 0;
  width: 100%;
  font: inherit;
  border: none;
  color: inherit;
}
.folder {
  color: #ffcc00;
}
.ls-files {
  /*height: 45px;*/
  /* Default, but changed by js depending on length of filename */
  -webkit-column-width: 100px;
  column-width: 100px;
}
.ls-files span {
  cursor: pointer;
}
.ls-files span:hover {
  text-decoration: underline;
}
button {
  background: -webkit-gradient(linear, 0% 40%, 0% 70%, from(#F9F9F9), to(#E3E3E3));
  border: 1px solid #ccc;
  border-radius: 3px;
  color: black;
  padding: 5px 8px;
  outline: none;
  white-space: nowrap;
  vertical-align: middle;
  -webkit-user-select:none;
  user-select: none;
  cursor: pointer;
}
button:not([disabled]):hover {
  border-color: #ffcc00;
}
button:not([disabled]):active {
  background: -webkit-gradient(linear, 0% 40%, 0% 70%, from(#E3E3E3), to(#F9F9F9));
}
button[disabled] {
  color: #ccc;
}
.help {
  font-family: 'Droid Sans', Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  display: -webkit-box;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  -webkit-box-orient: vertical;
  -webkit-user-select: none;
  user-select: none;
  font-size: 10pt;
}
.help,
.help > section {
  border-radius: 10px;
}
.help > section {
  padding: 10px;
  background: rgba(255, 255, 255, 0.3);
  -webkit-box-shadow: 3px 3px 5px rgba(0,0,0,0.6);
  border-radius: 10px;
  color: white;
  position: relative;
  width: 610px;
}
.help section > div:first-child {
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
.help section > div:last-child {
  padding-top: 0;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}
.help > section > div {
  background: rgba(0, 0, 0, 1);
  padding: 20px;
}
.help h2 {
  padding-bottom: 8px;
  margin-top: 0;
  margin-bottom: 25px;
  border-bottom: 1px solid #fff;
  color: #ffcc00;
}
.help p strong {
  width: 60px;
  display: inline-block;
}
.help #close {
  border-radius: 20px;
  padding: 2px 6px 2px 7px;
  border: 2px solid #fff;
  position: absolute;
  right: 20px;
  top: 20px;
  cursor: pointer;
  font-size: 90%;
  font-weight: bold;
  line-height: 17px;
}
.help #close:active {
  right: 19px;
  top: 21px;
}
.help .shortcuts {
  -webkit-columns: 2;
  columns: 2;
}


/* Themes */
.cream {
  color: black;
  background: #fffff3;
}
.cream .interlace {
  opacity: 0.1;
}
.cream .prompt {
  color: purple;
}
.cream .cmdline {
  color: black;
}

#port { width: 50px; }
